System for serving advertisements over mobile devices

ABSTRACT

A system is described for serving advertisements over mobile devices. The system may include a processor, a memory and an interface. The memory may be operatively connected to the processor and the interface and may store a mobile carrier data, a request and an advertisement data. The interface may be operatively connected to the memory and the processor and may communicate with the mobile devices. The processor may be operatively connected to the interface and the memory and may receive a request from a mobile device via the interface. The processor may determine the mobile carrier data that relates to the mobile carrier the mobile device is on. The processor may identify advertisement data that is targeted to the request and the mobile carrier data and may communicate the advertisement data to the mobile device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.60/779,840, filed on Mar. 6, 2006, which is incorporated by referenceherein.

TECHNICAL FIELD

The present description relates generally to a system and method,generally referred to as a system, for serving advertisements overmobile devices, and more particularly, but not exclusively, to servingadvertisements targeted to mobile devices of specified carriers.

BACKGROUND

The mobile phone may be increasingly important as an information andcontent access device. Currently there may be over 2 billion mobilephones globally, versus 800 million personal computers. Mobile operatorsmay be increasingly looking to high value data services as a way toovercome the continuing voice ARPU decline. Billions of dollars may bebeing spent globally on wireless licenses with billions more ininvestments in the pipeline for development of infrastructure andservices by wireless service and content providers. Carriers may beintroducing new data, content and multimedia services as a means ofgenerating new revenue stream, reversing negative ARPU trends, retainingand attracting customers as well as increasing returns on investment,and extending and differentiating their service offering to consumers.The emergence of these wireless technologies may be creating uniqueopportunities for wireless carriers, advertisers and publishers togenerate additional revenue streams through new and existing customers.As consumer adoption of wireless technology continues to increase,marketing via mobile devices may become an important part of allintegrated data communications strategies.

Mobile marketing may benefit consumers, mobile service providers,publishers and advertisers by driving incremental revenue, enhancingconsumer loyalty and providing convenience for mobile consumers. Mobiledata acceptance may have arrived in many parts of the World and may beexpected to increase. Mobile destination portals such as YAHOO! maymonetize the mobile searches.

The global business model of mobile marketing to date may depend uponsubscription revenue and purchases of consumables (i.e. ring tones,wallpapers, etc.). Slow roll-out and relatively small incrementalrevenue streams may be jeopardizing return on investment on current andfuture investments. Wireless advertising may now be seen as the greathope in accelerating revenue growth, especially given the experience ofonline web advertising. Search may be emerging as both a key feature anda potential universal interface for discovering and accessing mobileinformation.

However, usage patterns for mobile search and Web search may differ, aswell as the expectations of the users and the advertisers. Combined witha completely different user experience, these may change the value ofclicks and lead opportunities. Most current mobile devices may havelimited browser capabilities that do not support the rich feature set ofthe Web. Handset capabilities may impact the search behavior of mobileusers, where the limitations of numeric-pad keyed entry narrow thesearched for terms. The small screen size on mobile devices may have animpact on the performance of the search implementations. The size ofscreens on mobile handsets may limit the creative that can be displayedper listing, and the number of listings per screen. Current web searchmarketing systems may not account for these physical differences betweenmobile handsets and computers.

The mobile market place may be very fragmented in terms of handset andnetwork technologies, and this may impact the display of listings andadvertiser offer sites. For mobile devices, there may not be anHTML-like standard adhered to by all carriers, and the “standards” thatare present may tend to be operator specific, and may be incompatiblewith other “standards”. This may lead to markets within markets, where,for example in Japan, advertisers may create separate sites andcampaigns for IMODE users, and XHTML and WML users. This fragmentationmay also be barrier to entry for advertisers due to the investmentrequired to support the different technologies and interact with eachindividual carrier. Advertisers may be faced with either a largestart-up investment, or foregoing traffic from certain operators.

SUMMARY

A system is disclosed for serving advertisements over mobile devices.The system may include a processor, a memory, and an interface. Thememory may be operatively connected to the processor and the interfaceand may store mobile carrier data, advertisement data and a request. Theinterface may be operatively connected to the memory and the processorand may receive requests from and communicate advertisements to themobile devices. The processor may receive a request from a mobile devicevia the interface, and determine the mobile carrier the requestingmobile device is on. The processor may identify an advertisementrelating to both the mobile carrier and the request, and may communicatethe advertisement, via the interface, to the requesting mobile device.

Other systems, methods, features and advantages will be, or will become,apparent to one with skill in the art upon examination of the followingfigures and detailed description. It is intended that all suchadditional systems, methods, features and advantages be included withinthis description, be within the scope of the embodiments, and beprotected by the following claims and be defined by the followingclaims. Further aspects and advantages are discussed below inconjunction with the description.

BRIEF DESCRIPTION OF THE DRAWINGS

The system and/or method may be better understood with reference to thefollowing drawings and description. Non-limiting and non-exhaustivedescriptions are described with reference to the following drawings. Thecomponents in the figures are not necessarily to scale, emphasis insteadbeing placed upon illustrating principles. In the figures, likereferenced numerals may refer to like parts throughout the differentfigures unless otherwise specified.

FIG. 1 is a block diagram of a general overview of a system for servingadvertisements over mobile devices.

FIG. 2 is block diagram of a simplified view of a network environmentimplementing a system for serving advertisements over mobile devices.

FIG. 3 is a block diagram of a system for separating mobile traffic fromweb traffic in a system for serving advertisements over mobile devices.

FIG. 4 is a flowchart illustrating the operations of the systems of FIG.1 and FIG. 2, or other systems for serving advertisements over mobiledevices.

FIG. 5 is a flowchart illustrating steps that may be taken by a revenuegenerator in the systems of FIG. 1 and FIG. 2, or other systems forserving advertisements over mobile devices.

FIG. 6 is a flowchart illustrating steps that may be taken by a user inthe systems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 7 is an illustration a general computer system that may be used ina system for measuring the effect of an offline advertisement on onlinebehavior.

FIG. 8 is a screenshot of a revenue generator's account summary screenin the systems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 9 is a screenshot of a revenue generator's account preferencesscreen in the systems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 10 is a screenshot of a revenue generator's campaign summary screenin the systems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 11 is a screenshot of a revenue generator's listing managementscreen in the systems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 12 is a screenshot of a revenue generator's listing managementscreen showing a call offer entry in the systems of FIG. 1 and FIG. 2,or other systems for serving advertisements over mobile devices.

FIG. 13 is a screenshot of a revenue generator's listing managementscreen showing a mobile site URL entry in the systems of FIG. 1 and FIG.2, or other systems for serving advertisements over mobile devices.

FIG. 14 is a screenshot of a revenue generator's listings' editorialstatus in the systems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 15 is a screenshot of a revenue generator's budgeting screen in thesystems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 16 is a screenshot of a revenue generator's add money screen in thesystems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 17 is a screenshot of a revenue generator's add money confirmationscreen in the systems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 18 is a screenshot of a revenue generator's add payment method inthe systems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

FIG. 19 is a screenshot of a revenue generator's update payment methodin the systems of FIG. 1 and FIG. 2, or other systems for servingadvertisements over mobile devices.

DETAILED DESCRIPTION

A system and method, generally referred to as a system, relate toserving advertisements over mobile devices, and more particularly, butnot exclusively, to serving advertisements targeted to mobile devices ofindividual mobile network operators. The principles described herein maybe embodied in many different forms.

FIG. 1 provides a general overview of a system 100 for servingadvertisements over mobile devices. Not all of the depicted componentsmay be required, however, and some implementations may includeadditional components. Variations in the arrangement and type of thecomponents may be made without departing from the spirit or scope of theclaims as set forth herein. Additional, different or fewer componentsmay be provided.

The system 100 may include one or more revenue generators 110A-N, suchas mobile advertisers, a service provider 130, such as a portal, one ormore mobile network operators (“MNOs”) 115A-N, more commonly referred toas mobile carriers or simply carriers, and one or more users 120AA-NN,such as mobile subscribers or consumers. The revenue generators 110A-Nmay pay the service provider 130 to display advertisements, such ason-line advertisements on a network such as a mobile network or theInternet. The payments may be based on various factors, such as thenumber of times an advertisement may be displayed to the users 120AA-NNand/or the number of times one of the users 120AA-NN may click throughthe advertisement to the revenue generator's web site or mobile site.

The service provider 130 may maintain a mobile site or mobile portal,such as a search site, where the service provider 130 may displayadvertisements of the revenue generators 110A-N to the users 120AA-NN.The service provider 130 may share revenue with the MNOs 115A-N fordisplaying advertisements of the revenue generators 110A-N on theirmobile networks. Alternatively or in addition the service provider 130may share revenue with individual mobile publishers for displayingadvertisements of the revenue generators 110A-N on their mobile sites.

The users 120AA-NN may be consumers of goods or services who may besearching for a business such as the business of one of the revenuegenerators 110A-N. The users 120AA-NN may communicate with the serviceprovider 130 through the mobile network operators 115A-N. The users120AA-NN may supply information describing themselves to the serviceprovider 130, such as the location, gender, or age of the users120AA-NN, or generally any information that may be required for theusers 120AA-NN to utilize the services provided by the service provider130. Alternatively or in addition the service provider 130 may obtaininformation about the users 120AA-NN from the MNOs 115A-N.

In the system 100, the revenue generators 110A-N may interact with theservice provider 130, such as via a web application. The revenuegenerators 110A-N may send information, such as billing, website ormobile site and advertisement information, to the service provider 130via the web application. The web application may include a web browseror other application such as any application capable of displaying webcontent. The application may be implemented with a processor such as apersonal computer, personal digital assistant, mobile phone, or anyother machine capable of implementing a web application.

The users 120AA-NN may also interact individually with the serviceprovider 130, through the mobile network operators 115A-N, such as via amobile phone or any device capable of communicating with the mobilenetwork operators 115A-N. The users 120AA-NN may interact with theservice provider 130 via a mobile web based application, a mobilestandalone application, or any application capable of running on amobile device. The service provider 130 may communicate data to therevenue generators 110A-N over a network and to the users 120AA-NN overa network via the MNOs 115A-N. The following examples may refer to arevenue generator A 110A as an online advertiser or mobile advertiser;however the system 100 may apply to any revenue generators 110A-N whomay desire to serve advertisements over mobile devices.

In operation, one of the revenue generators 110A-N, such as revenuegenerator A 110A, may provide information to the service provider 130.This information may relate to the transaction taking place between therevenue generator A 110A and the service provider 130, or may relate toan account the revenue A 110A generator maintains with the serviceprovider 130. In the case of a revenue generator A 110A who is a mobileadvertiser, the revenue generator A 110A may provide initial informationnecessary to open an account with the service provider 130.

A revenue generator A 110A who is an mobile advertiser may maintain oneor more accounts with the service provider 130. For each account therevenue generator A 110A may maintain one or more campaigns. For eachcampaign the revenue generator A 110A may maintain one or more listings.A listing may include a search keyword and one or more carrier listings.Each carrier listing may identify the mobile carrier and may include anadvertisement title, an advertisement description, a bid amount and amobile site URL, if any. A carrier listing may represent an associationbetween a search keyword, a mobile advertisement and a carrier whoseusers are targeted by the mobile advertisement.

The carrier listings may allow the service provider 130 to provide amobile advertising marketplace separate from the web advertisingmarketplace, essentially separating the web keywords from the mobilekeywords. The carrier listings may also allow the service provider 130to provide a separate marketplace for each of the MNOs 115A-N,essentially separating the keywords associated with each of the MNOs115A-N. For example, the revenue generator A 110A may place one bid onthe keyword “dvd” for the MNO A 115A and a separate bid for the keyword“dvd” for the MNO B 115B. Furthermore, by creating a separatemarketplace for each of the MNOs 115A-N, the revenue generator A 110Amay create separate advertisements compatible with the underlyingtechnology of each MNO. The service provider 130 may implement theseparation of keywords by utilizing a data field to indicate whichcarrier a carrier listing may apply to. For example, a revenue generatorA 110A may have several listings for the same keyword; however, they maybe differentiated by a data field indicating which carrier each listingapplies to. Alternatively or in addition, if the database architecturedoes not support the addition of a separate field, or if the serviceprovider 130 wishes to utilize the functionality of an existing websearch marketing system, the keywords for each carrier may be separatedby adding prefixes to the keywords. In this case, each of the carriersmay be identified by a unique prefix identifier. The prefix identifiermay include a combination of the geographical location of the carrierand a descriptor of the carrier. For example, the carrier SPRINT mayhave a prefix of “usmobsprintsb”.

The prefix may be separated from the keyword by a keyword separator,such as the character string “vxv”. The purpose of the keyword separatormay be to identify the location in the character string where the prefixends and the keyword begins. The “vxv” keyword separator may beparticularly functional in this regard, because this sequence of lettersmay very rarely, or never, appear in the English language. Thus, thepresence of the “vxv” character string may indicate the end of theprefix and the beginning of the keyword. For example, if the revenuegenerator A 110A bid on the keyword “dvd” for users on the carrierSPRINT, the keyword may be stored in an existing search marketingdatabase as “usmobsprintsbvxvdvd”. The service provider 130 may latersearch for the advertisements associated with SPRINT for the keyword“dvd” by searching for the keyword “usmobsprintsbvxvdvd”.

If the revenue generator A 110A does not have a mobile site URL for theMNO A 115A, the revenue generator A 110A may still bid on a keyword forthe MNO A 115A. In this case, the service provider 130 may dynamicallycreate a “WAP ad.” The “WAP ad” may be an offer landing page containingthe phone number of the advertiser and/or the logo of the advertiser.When a user AA 120AA clicks on the advertisement of the revenuegenerator A 110A who does not have a mobile site, the user AA 120AA maybe taken to a page showing the phone number and/or logo of the revenuegenerator A 110A. The user AA 120AA may then use their mobile device tocall the phone number of the revenue generator A 10A and complete theirtransaction. The data associated with the “WAP ad” may be stored in theadvertisement title and/or the advertisement description fields.

The keywords may represent one or more search terms that the revenuegenerator A 110A wishes to associate with their advertisement. When auser AA 120AA searches for a search keyword via MNO A 115A, the mobileadvertisement of the revenue generator A 110A may be displayed on thesearch results page. The service provider 130 may also implementdirectory search implementations, where the user AA 120AA may clickthrough directories of families of related data. In this instance thesearch keyword may be the name of the directory the user AA 120AA clickson. Alternatively or in addition the user AA 120AA may interact with theservice provider 130 through an SMS search service.

For example, a revenue generator A 110A, such as GENERAL MOTORS, maydesire to target a mobile advertisement for a GENERAL MOTORS JEEP tousers 120AA-NA on MNO A 115A searching for the keywords “JEEP.” GENERALMOTORS may place a bid with the service provider 130 for the keyword“JEEP” on MNO A 115A. The mobile advertisement of the revenue generatorA 110A may be displayed when one of the users 120AA-NA on the MNO A 115Asearches for the keyword “JEEP,” or clicks through a directory named“JEEP.” GENERAL MOTORS may be able to use the same interface to submitbids for “JEEP” on any of the MNOS 115A-N.

The advertisement title may represent the data the revenue generator A110A wishes to be displayed to a user AA 120AA when the user AA 120AAsearches for the keyword associated with the listing. Alternatively orin addition, the advertisement description may represent the data therevenue generator A 110A wishes to be displayed to a user AA 120AA whenthe user AA 120AA searches for the keyword associated with the listing.The mobile site URL may represent the link the revenue generator A 110Awishes a user AA 120AA to be directed to upon clicking on the mobileadvertisement of the revenue generator A 110A, such as the home page ofthe revenue generator A 110A. The bid amount may represent a maximumamount the revenue generator A 110A may be willing to pay each time auser AA 120AA may click on the mobile advertisement of the revenuegenerator A 110A or each time the mobile advertisement of the revenuegenerator A 110A may be shown to a user AA 120AA.

There may be some instances where multiple revenue generators 110A-N mayhave bid on the same search keyword for the same MNO, such as MNO A115A. The service provider 130 may serve to the users 120AA-NA theonline advertisements that the users 120AA-NA may be most likely toclick on. For example, the service provider 130 may include a relevancyassessment to determine the relevancy of the multiple mobileadvertisements to the search keyword. The more relevant a mobileadvertisement may be to the keyword the more likely it may be that theuser AA 120AA may click on the advertisement. Exemplary ways todetermine relevance are described in more detail below. Methods forassessing relevancy in online web search marketing may also apply tomobile search marketing.

When one of the users 120AA-NN, such as the user AA 120AA, interactswith the service provider 130, such as by searching for a keyword, theservice provider 130 may retain data describing the interaction with theuser AA 120AA. The retained data may include the keyword searched for,the geographic location of the user AA 120AA, and the date/time the userAA 120AA interacted with the service provider 130. The data may alsogenerally include any data available to the service provider 130 thatmay assist in describing the interaction with the user AA 120AA, ordescribing the user AA 120AA. The service provider 130 may also storedata that indicates whether a mobile advertisement of one of the revenuegenerators 110A-N, such as the revenue generator A 110A was displayed tothe user AA 120AA, and whether the user AA 120AA clicked on the mobileadvertisement.

The service provider 130 may already have information relating to thegeographic location of the user AA 120AA and other informationdescribing the user A 120A, such as gender, age, etc. This informationmay have been previously supplied to the service provider 130 by theuser AA 120AA. Alternatively or in addition the service provider 130 mayobtain the location of the user AA 120AA based on the IP address of theuser AA 120AA. The service provider 130 may use a current date/timestamp to store the date/time when the user AA 120AA interacted with theservice provider 130. The service provider 130 may use any of theinformation describing the user or the keyword searched for by the userthe relevancy of an advertisement to the search.

Furthermore, the service provider 130 may generate reports based on thedata collected from the user interactions and communicate the reports tothe revenue generators 110A-N to assist the revenue generators 110A-N inmeasuring the effectiveness of their mobile advertising. The reports mayindicate the number of times the users 120AA-NN searched for thekeywords bid on by the revenue generators 110A-N, the number of times amobile advertisement of the revenue generators 110A-N was displayed tothe users 120AA-NN, and the number of times the users 120AA-NN clickedthrough on the advertisements of the revenue generators 110A-N. Theremay be a separate report for each MNO 115A-N the revenue generator A110A maintains a carrier listing for. There may be a report displayingthe aggregate data across all of the MNOs 115A-N the revenue generator A110A maintains an carrier listing for. The reports may also generallyindicate any data that may assist the revenue generators 110A-N inmeasuring the effectiveness of their mobile advertising campaigns.

FIG. 2 provides a simplified view of a network environment implementinga system 200 for serving advertisements over mobile devices. Not all ofthe depicted components may be required, however, and someimplementations may include additional components not shown in thefigure. Variations in the arrangement and type of the components may bemade without departing from the spirit or scope of the claims as setforth herein. Additional, different or fewer components may be provided.

The system 200 may include one or more web applications, standaloneapplications and mobile applications 210A-N, which may be collectivelyor individually referred to as client applications of the revenuegenerators 110A-N. The system 200 may also include one or more mobileapplications, or mobile apps 220AA-NN, which may collectively bereferred to as client applications of the users 120AA-NN, orindividually as a user client application. The system 200 may alsoinclude one or more MNO gateway servers 215A-N, a network 230, a network235, the service provider server 240, a third party server 250, and anadvertising services server 260.

Some or all of the advertisement services server 260, service providerserver 240, and third-party server 250 may be in communication with eachother by way of network 235 and may be the system or componentsdescribed below in FIG. 7. The advertisement services server 260,third-party server 250 and service provider server 240 may eachrepresent multiple linked computing devices. Multiple distinct thirdparty servers, such as the third-party server 250, may be included inthe system 200. The third-party server 250 may be an MNO gateway server215A-N or a server associated with, or in communication with an MNOgateway server 215A-N.

The networks 230, 235 may include wide area networks (WAN), such as theinternet, local area networks (LAN), campus area networks, metropolitanarea networks, or any other networks that may allow for datacommunication. The network 230 may include the Internet and may includeall or part of network 235; network 235 may include all or part ofnetwork 230. The networks 230, 235 may be divided into sub-networks. Thesub-networks may allow access to all of the other components connectedto the networks 230, 235 in the system 200, or the sub-networks mayrestrict access between the components connected to the networks 230,235. The network 235 may be regarded as a public or private networkconnection and may include, for example, a virtual private network or anencryption or other security mechanism employed over the publicInternet, or the like.

The revenue generators 110A-N may use a web application 210A, standaloneapplication 210B, or a mobile application 210N, or any combinationthereof, to communicate to the service provider server 240, such as viathe networks 230, 235. The service provider server 240 may communicateto the revenue generators 110A-N via the networks 230, 235, through theweb applications, standalone applications or mobile applications 210A-N.

The users 120AA-NN may use a mobile application 220AA-220NN, such as amobile web browser, to communicate with the service provider server 240,via the MNO gateway servers 215A-N and the networks 230, 235. Theservice provider server 240 may communicate to the users 120A-N via thenetworks 230, 235 and the MNOs 215A-N, through the mobile applications220AA-NN.

The web applications, standalone applications and mobile applications210A-N, 220AA-NN may be connected to the network 230 in anyconfiguration that supports data transfer. This may include a dataconnection to the network 230 that may be wired or wireless. Any of theweb applications, standalone applications and mobile applications210A-N, 220AA-NN may individually be referred to as a clientapplication. The web application 210A may run on any platform thatsupports web content, such as a web browser or a computer, a mobilephone, personal digital assistant (PDA), pager, network-enabledtelevision, digital video recorder, such as TIVO®, automobile and/or anyappliance capable of data communications.

The standalone applications 210B may run on a machine that may have aprocessor, memory, a display, a user interface and a communicationinterface. The processor may be operatively connected to the memory,display and the interfaces and may perform tasks at the request of thestandalone applications 210B or the underlying operating system. Thememory may be capable of storing data. The display may be operativelyconnected to the memory and the processor and may be capable ofdisplaying information to the revenue generator B 110B. The userinterface may be operatively connected to the memory, the processor, andthe display and may be capable of interacting with a revenue generator A110A. The communication interface may be operatively connected to thememory, and the processor, and may be capable of communicating throughthe networks 230, 235 with the service provider server 240, third partyserver 250 and advertising services server 260. The standaloneapplications 210B may be programmed in any programming language thatsupports communication protocols. These languages may include: SUN JAVA,C++, C#, ASP, SUN JAVASCRIPT, asynchronous SUN JAVASCRIPT, or ADOBEFLASH ACTIONSCRIPT, amongst others.

The mobile applications 210N, 220AA-NN may run on any mobile devicewhich may have a data connection. The mobile applications 210N, 220AA-NNmay be a web application 210A, a standalone application 210B, or amobile browser. The mobile device may be one of a broad range ofelectronic devices which may include mobile phones, PDAs, and laptopsand notebook computers. The mobile device may have a reduced featureset, such as a smaller keyboard and/or screen, and may be incapable ofsupporting a traditional web search.

The data connection of the mobile device may be a cellular connection,such as a GSM/GPRS/WCDMA connection, a wireless data connection, aninternet connection, an infra-red connection, a Bluetooth connection, orany other connection capable of transmitting data. The data connectionmay be used to connect directly to the network 230, or to connect to thenetwork 230 through the MNO gateway servers 215A-N. The MNO gatewayservers 215A-N may control the access the mobile applications 210AA-NNmay have to the network. The MNO gateway servers 215A-N may also controlthe technology supporting the respective mobile applications 220AA-NN.This may affect all aspects of the user experience, such as signalstrength and availability, speed and billing mechanisms. For example,the MNO gateway server A 215A may only allow the users 120AA-NA accessto content provided by partners of the MNO A 115A. Furthermore, the MNOgateway servers 215A-N may only allow users 120AA-NN access to data in aspecific format, such as WML, XHTML, NTT DOCOMO IMODE HTML, or cHTML.Alternatively or in addition, the mobile applications 220AA-NN may onlysupport one of the aforementioned formats.

The service provider server 240 may include one or more of thefollowing: an application server, a data source, such as a databaseserver, a middleware server, and an advertising services server. Onemiddleware server may be a mobile commerce platform, such as the YAHOO!SUSHI platform, which may properly encode data, such as mobile pages ormobile advertisements, to the formats specific to the MNO gatewayservers 215A-N. The service provider server 240 may co-exist on onemachine or may be running in a distributed configuration on one or moremachines. The service provider server 240 may collectively be referredto as the server. The service provider server 240 may receive requestsfrom the users 120AA-NN and the revenue generators 110A-N and may servemobile pages to the users 120AA-NN and web pages and/or mobile pages tothe revenue generators 110A-N based on their requests.

The third party server 250 may include one or more of the following: anapplication server, a data source, such as a database server, amiddleware server, and an advertising services server. The third partyserver 250 may co-exist on one machine or may be running in adistributed configuration on one or more machines. The advertisingservices server 260 may provide a platform for the inclusion ofadvertisements in pages, such as web pages or mobile pages. Theadvertisement services server 260 may be used for providing mobileadvertisements that may be displayed to the users 120AA-NN.

The service provider server 240, the third party server 250 and theadvertising services server 260 may be one or more computing devices ofvarious kinds, such as the computing device in FIG. 7. Such computingdevices may generally include any device that may be configured toperform computation and that may be capable of sending and receivingdata communications by way of one or more wired and/or wirelesscommunication interfaces. Such devices may be configured to communicatein accordance with any of a variety of network protocols, including butnot limited to protocols within the Transmission ControlProtocol/Internet Protocol (TCP/IP) protocol suite. For example, the webapplication 210A may employ HTTP to request information, such as a webpage, from a web server, which may be a process executing on the serviceprovider server 240 or the third-party server 250.

There may be several configurations of database servers, applicationservers, middleware servers and advertising services servers included inthe service provider server 240 or the third party server 250. Databaseservers may include MICROSOFT SQL SERVER, ORACLE, IBM DB2 or any otherdatabase software, relational or otherwise. The application server maybe APACHE TOMCAT, MICROSOFT IIS, ADOBE COLDFUSION, YAPACHE or any otherapplication server that supports communication protocols. The middlewareserver may be any middleware that connects software components orapplications. The application server on the service provider server 240or the third party server 250 may serve pages, such as web pages to theusers 120A-N and the revenue generators 110A-N. The advertising servicesserver may provide a platform for the inclusion of advertisements inpages, such as web pages. The advertising services server 260 may alsoexist independent of the service provider server 240 and the third partyserver 250.

The networks 230, 235 may be configured to couple one computing deviceto another computing device to enable communication of data between thedevices. The networks 230, 235 may generally be enabled to employ anyform of machine-readable media for communicating information from onedevice to another. Each of networks 230, 235 may include one or more ofa wireless network, a wired network, a local area network (LAN), a widearea network (WAN), a direct connection such as through a UniversalSerial Bus (USB) port, and the like, and may include the set ofinterconnected networks that make up the Internet. The networks 230, 235may include any communication method by which information may travelbetween computing devices.

FIG. 3 provides a view of the functionality supporting the separation ofweb and mobile marketplaces in the systems of FIG. 1 and FIG. 2, orother systems for serving advertisements over mobile devices. Not all ofthe depicted components may be required, however, and someimplementations may include additional components not shown in thefigure. Variations in the arrangement and type of the components may bemade without departing from the spirit or scope of the claims as setforth herein. Additional, different or fewer components may be provided.

FIG. 3 may include the world wide web 310, MNO A 115A, MNO B 115B, MNO N115N, the network 230, and the service provider 130. The serviceprovider may include an interface 320, a traffic controller 350, amobile traffic handler 330, and a web traffic handler 340.

The world wide web 310 may represent all applications connected to theworld wide web 310, interacting with the service provider 130, capableof the full search functionality provided by standard HTML web pages,such as the web application A 210A. The MNOs 115A-N may represent theapplications connected to the MNOs 115A-N interacting with the serviceprovider 130, such as the mobile applications 220AA-NN. The serviceprovider 130 may utilize the interface 320 to receive the traffic fromthe network 230. The traffic controller 350 may determine the origin ofthe traffic and direct the traffic to the appropriate handler, themobile traffic handler 330 or the web traffic handler 340.

In operation, the world wide web 310, and the MNOs 115A-N maycommunicate with the service provider 130 via the network 230. Theservice provider 130 may receive traffic from the world wide web 310 andthe MNOs 115A-N through the network 230 and via the interface 320. Theinterface 320 may communicate the traffic to the traffic controller 350.The traffic controller 350 may determine the origin of the traffic. Thetraffic controller 350 may use the IP address associated with therequest to determine the origin of the request.

The IP address may be obtained from the user agent string of therequest. The user agent string may contain information relating to thesource of the request, such as the IP address or the carrier ID. Allrequests from any user on a given MNO gateway server may have the same,or similar, IP addresses. Thus, a request from a particular MNO gatewayserver or from an MNO in general, may be identifiable by the IP addressof the request. The carrier ID may also be capable of identifying thesource of the request as an MNO gateway server.

Alternatively or in addition the service provider 130 may providedistinct mobile search sites for each of the MNOs 115A-N and the worldwide web. The mobile search sites may contain a hidden input variable orsome other indicator that indicates the source of the search request.For example the mobile search site for the carrier SPRINT may include ahidden INPUT variable with a value of “usmobsprintsb” indicating thatthe search request originated from the MNO SPRINT. Alternatively or inaddition the service provider 130 may provide a dedicated feed for eachof the MNOs 115A-N. The feed may be implemented by a separateapplication server for each of the MNOs 115A-N. The particular feed therequest is received from may indicate the source of the request.

Once the traffic controller 350 determines the origin of the traffic thetraffic controller 350 may forward the traffic to the appropriatehandler. If the traffic originated from one of the MNOs 115A-N, then thetraffic may be directed to the mobile traffic handler 330. If thetraffic was generated from the world wide web 310, the trafficcontroller 350 may direct the traffic to the web traffic handler 340. Ifthe system 100 implements keyword separation through the use of adatabase field, the traffic controller 350 may supply the origin of therequest to the mobile traffic handler 330.

If the system 100 implements keyword separation through the use ofprefix identifiers, the traffic controller 350 may determine the originof the traffic and add the prefix associated with the origin and thekeyword separator to the keyword. For example, if a keyword search for“dvd” originated from the carrier SPRINT, the traffic controller 350 mayadd the prefix “usmobsprintsb” followed by “vxv” to “dvd,” resulting in“usmobsprintsbvxvdvd”. The search keyword may then be forwarded to themobile traffic handler 330 as “usmobsprintsbvxvdvd”. The mobile traffichandler 330 may then use “usmobsprintsbvxvdvd” to determine whichadvertisements may relate to the keyword “dvd” on the carrier SPRINT.Alternatively or in addition, all traffic may be handled by one handler,such as the web traffic handler 340.

The mobile traffic handler 330 may receive the keyword and the origin ofthe request from the traffic controller 350. The mobile traffic handler330 may then determine which advertisements to return to the user, suchas the user AA 120AA. The mobile traffic handler 330 may first identifythe carrier, such as the MNO A 115A. Only advertisements associated withbids on the keyword for the MNO A 115A may be selected. In the case ofprefix identifiers, the step of identifying the carrier may be used toidentify the proper prefix. The mobile traffic handler 330 may thenselect one or more advertisements to be returned to the user AA 120AA.The determination may be based on the amount bid on for theadvertisement, such as the advertisement associated with the highest bidfor the keyword on the MNO may be displayed to the user AA 120AA.Alternatively or in addition the mobile traffic handler 330 may accountfor the relevancy of the advertisement to the keyword or other methodsutilized by web search marketing technology, such as the YAHOO! SEARCHMARKETING technology. The advertisement may consist of a link to themobile URL site of a revenue generator and the advertisement titleand/or description as the text of the link displayed to the user AA120AA.

If a revenue generator A 110A does not have a mobile ad for the MNO A115A, the mobile traffic handler 330 may use the aforementioned “WAP ad”in lieu of a mobile advertisement. The “WAP ad” may include the phonenumber of the revenue generator A 110A and/or a logo of the revenuegenerator A 110A. The data for the “WAP” ad may be stored in theadvertisement title or advertisement description field of the MNOlisting. The “WAP ad” may allow the revenue generators 110A-N to bid onkeywords for a mobile carrier even if they don't have a mobile site or amobile site supporting the technology of the carrier.

The service provider 130 may have technology capable of generating a“WAP ad”, or “call offer,” for each of the mobile carriers based on theadvertisement title and/or logo of the revenue generator A 110A. Forexample, the service provider 130 may have a database table containing arow for each of the MNOs 115A-N and a field containing skeleton code forgenerating a “WAP ad” for each MNO 115A-N. The service provider 130 maysimply retrieve the “WAP ad” skeleton code and insert the text of theadvertisement title and/or description and/or the logo of the revenuegenerator A 110A. The service provider 130 may then host the “WAP ad” onbehalf of the revenue generator A 110A.

Alternatively, or in addition, the service provider 130 may utilizemiddleware, such as the YAHOO! SUSHI platform, to properly encode the“WAP ads” for each MNO 115A-N. The data associated with the “WAP ad” maybe communicated to the middleware in XML format and the middleware mayencode the “WAP ad” to conform with the underlying technology of eachMNO 115A-N, such as WML, XHTML, NTT DOCOMO IMODE HTML, or cHTML.

The mobile traffic handler 330 may then communicate the advertisement tothe interface 320. The interface 320 may communicate the advertisementand search results to the mobile application AA 220AA via the network230 and the MNO A 115A. The mobile application AA 220AA may display theadvertisement to the user AA 120AA.

FIG. 4 is a flow chart illustrating the operations of the systems ofFIG. 1 and FIG. 2, or other systems for serving advertisements overmobile devices. At block 410, the service provider 130 may receive akeyword search request from one of the users 120AA-NN, such as the userAA 120AA. At block 420 the service provider 130 may identify the sourceof the request, such as by identifying the IP address of the requestinguser AA 120AA. The IP address of the request may be used to determinewhether the request originated from a mobile network, and, if so, whichmobile network. If the request was generated by a page belonging to theservice provider 130, the page may have hidden variables identifying thesource MNO of the request. Alternatively or in addition the serviceprovider 130 may have a dedicated feed for the MNO.

At block 430, the service provider 130 may determine whether the requestoriginated from a mobile network. If the request did not originate froma mobile network, the system 100 may move to block 440. At block 440 therequest may be handled as traditional web traffic and may be forwardedto the web search marketing system. If the service provider 130determines the request was generated from a mobile network the system100 may move to block 450. At block 450 the originating mobile networkmay be identified, such as the MNO A 115A. The mobile network may beidentified by the IP address of the requesting user AA 120AA. If therequest was generated by a page belonging to the service provider 130,the page may have hidden variables identifying the source MNO of therequest. Alternatively or in addition the service provider 130 may havea dedicated feed for the MNO. Once the originating mobile network isdetermined the system 100 may move to block 460. At block 460 theservice provider 130 may select one or more revenue generators 110A-Nwho may have bid on the keyword for the originating MNO. The serviceprovider 130 may select the revenue generator 110A-N with the highestbid for the keyword on the originating mobile network, such as the MNO A115A. Alternatively or in addition, the service provider 130 may use anymethods used to select advertisements of the revenue generators 110A-Nin web based search marketing systems. The methods may include combiningthe bid amounts with a relevancy assessment to determine whichadvertisement or “WAP ad” may be most relevant to the keyword searchedfor by the user AA 120AA.

Once the revenue generator, such as the revenue generator A 110A, hasbeen selected the system 100 may move to block 470. At block 470 theservice provider 130 may determine whether the revenue generator A 110Ahas a mobile advertisement for the MNO A 115A. If the revenue generatorA 110A does not have a mobile advertisement the system 100 may move toblock 480. At block 480 the service provider 130 may generate theaforementioned “WAP ad” for the revenue generator A 110A. The “WAP” admay be based on data stored in the advertisement title and/oradvertisement description field of the MNO listing.

If the revenue generator A 110A has a mobile advertisement for the MNO A115A, or once the “WAP ad” has been generated, the system 100 may moveto block 490. At block 490 the service provider 130 may serve the mobileadvertisement and search results to the requesting user AA 120AA. Theservice provider 130 may communicate the data to the MNO A 115A throughthe networks 230, 235. The MNO A 115A may communicate the data to theuser AA 120AA.

FIG. 5 is a flowchart illustrating steps that may be taken by one of therevenue generators 110A-N in the systems of FIG. 1, and FIG. 2, or othersystems for serving advertisements over mobile devices. The steps mayoccur when one of the revenue generators 110A-N, such as the revenuegenerator A 110A, wishes to bid on keywords for a carrier, such as theMNO A 115A. At block 510 the revenue generator A 110A interacts with theservice provider server 240, such as by logging onto the serviceprovider 130. At block 520 the revenue generator A 110A may communicatea request to bid on mobile keywords.

At block 530 the revenue generator A 110A may communicate informationidentifying the keyword the revenue generator A 110A wishes to bid on.At block 540 the revenue generator A 110A may identify one or more MNOs115A-N, such as the MNO A 115A, that the revenue generator A 110A wishesto bid for the keyword on. Once the revenue generator A 110A identifiesone or more MNOs 115A-N, the system 100 may move to block 550. At block550 the revenue generator A 110A may place a bid on the identifiedkeyword for the MNO A 115A. The bid made by the revenue generator A 110Amay only apply to the keyword when searched for on the MNO A 115A. Therevenue generator A 110A may specify one or more other MNOs 115B-N whichthe bid may apply to.

At block 540, the revenue generator A 110A may communicate to theservice provider 130 a mobile advertisement and a mobile URL theadvertisement may link to. The mobile advertisement may consist of adescription of the advertisement and/or a title of the advertisement.The limited space available on the screens of mobile devices maynecessitate that a mobile advertisement be relatively shorter than a webadvertisement. Alternatively or in addition, the advertisement mayinclude other elements, such as images, audio, and/or video elements. Ifthe revenue generator A 110A does not have a mobile URL for the MNO A115A, the service provider 130 may generate a “WAP ad” for the revenuegenerator A 110A. The “WAP ad” may be a mobile page for the MNO thatcontains the phone number and/or the logo of the revenue generator A110A. The “WAP ad” data may be stored in the advertisement descriptionfield of the MNO listing of the revenue generator A 110A.

FIG. 6 is a flowchart illustrating steps that may be taken by one of theusers 120AA-NN in the systems of FIG. 1, and FIG. 2, or other systemsfor serving advertisements over mobile devices. The steps may occur whenone of the users 120AA-NN, such as the user AA 120AA, performs a searchon a mobile application 220AA-NN, such as the mobile application AA220AA, via a MNO 115A-N, such as the MNO A 115A. At block 610, the userAA 120AA may interact with the service provider 130 via the mobileapplication AA 220AA, such as by performing a search from the mobileapplication AA 220AA. At block 620 the service provider 130 maydetermine the carrier the request of the user AA 120AA originates from,such as the MNO A 115A. At block 630 the service provider 130 maydetermine which advertisements may relate to the keyword searched for onthe MNO A 115A. The service provider 130 may select advertisements fromrevenue generators 110A-N who may have bid on the keyword searched forfrom the MNO A 115A. The service provider 130 may select the revenuegenerator A 110A with the highest bid for the keyword from the MNO A115A. Alternatively or in addition the service provider 130 may selectmore than one advertisement to display to the user AA 120AA. The size ofthe screen on the device of the user AA 120AA may be a factor used indetermining how many advertisements to communicate to the user AA 120AA.

At block 640 the service provider 130 may communicate the advertisementand search results to the user AA 120AA via the MNO A 115A and themobile application AA 220AA. At block 650 the user AA 120AA may view thesearch results and accompanying advertisement via the mobile applicationAA 220AA.

FIG. 7 illustrates a general computer system 700, which may represent aservice provider server 240, a third party server 250, an advertisingservices server 260, a mobile device or any of the other computingdevices referenced herein. The computer system 700 may include a set ofinstructions 724 that may be executed to cause the computer system 700to perform any one or more of the methods or computer based functionsdisclosed herein. The computer system 700 may operate as a standalonedevice or may be connected, e.g., using a network, to other computersystems or peripheral devices.

In a networked deployment, the computer system may operate in thecapacity of a server or as a client user computer in a server-clientuser network environment, or as a peer computer system in a peer-to-peer(or distributed) network environment. The computer system 700 may alsobe implemented as or incorporated into various devices, such as apersonal computer (PC), a tablet PC, a set-top box (STB), a personaldigital assistant (PDA), a mobile device, a palmtop computer, a laptopcomputer, a desktop computer, a communications device, a wirelesstelephone, a land-line telephone, a control system, a camera, a scanner,a facsimile machine, a printer, a pager, a personal trusted device, aweb appliance, a network router, switch or bridge, or any other machinecapable of executing a set of instructions 724 (sequential or otherwise)that specify actions to be taken by that machine. In a particularembodiment, the computer system 700 may be implemented using electronicdevices that provide voice, video or data communication. Further, whilea single computer system 700 may be illustrated, the term “system” shallalso be taken to include any collection of systems or sub-systems thatindividually or jointly execute a set, or multiple sets, of instructionsto perform one or more computer functions.

As illustrated in FIG. 7, the computer system 700 may include aprocessor 702, such as, a central processing unit (CPU), a graphicsprocessing unit (GPU), or both. The processor 702 may be a component ina variety of systems. For example, the processor 702 may be part of astandard personal computer or a workstation. The processor 702 may beone or more general processors, digital signal processors, applicationspecific integrated circuits, field programmable gate arrays, servers,networks, digital circuits, analog circuits, combinations thereof, orother now known or later developed devices for analyzing and processingdata. The processor 702 may implement a software program, such as codegenerated manually (i.e., programmed).

The computer system 700 may include a memory 704 that can communicatevia a bus 708. The memory 704 may be a main memory, a static memory, ora dynamic memory. The memory 704 may include, but may not be limited tocomputer readable storage media such as various types of volatile andnon-volatile storage media, including but not limited to random accessmemory, read-only memory, programmable read-only memory, electricallyprogrammable read-only memory, electrically erasable read-only memory,flash memory, magnetic tape or disk, optical media and the like. In onecase, the memory 704 may include a cache or random access memory for theprocessor 702. Alternatively or in addition, the memory 704 may beseparate from the processor 702, such as a cache memory of a processor,the system memory, or other memory. The memory 704 may be an externalstorage device or database for storing data. Examples may include a harddrive, compact disc (“CD”), digital video disc (“DVD”), memory card,memory stick, floppy disc, universal serial bus (“USB”) memory device,or any other device operative to store data. The memory 704 may beoperable to store instructions 724 executable by the processor 702. Thefunctions, acts or tasks illustrated in the figures or described hereinmay be performed by the programmed processor 702 executing theinstructions 724 stored in the memory 704. The functions, acts or tasksmay be independent of the particular type of instructions set, storagemedia, processor or processing strategy and may be performed bysoftware, hardware, integrated circuits, firm-ware, micro-code and thelike, operating alone or in combination. Likewise, processing strategiesmay include multiprocessing, multitasking, parallel processing and thelike.

The computer system 700 may further include a display 714, such as aliquid crystal display (LCD), an organic light emitting diode (OLED), aflat panel display, a solid state display, a cathode ray tube (CRT), aprojector, a printer or other now known or later developed displaydevice for outputting determined information. The display 714 may act asan interface for the user to see the functioning of the processor 702,or specifically as an interface with the software stored in the memory704 or in the drive unit 706.

Additionally, the computer system 700 may include an input device 712configured to allow a user to interact with any of the components ofsystem 700. The input device 712 may be a number pad, a keyboard, or acursor control device, such as a mouse, or a joystick, touch screendisplay, remote control or any other device operative to interact withthe system 700.

The computer system 700 may also include a disk or optical drive unit706. The disk drive unit 706 may include a computer-readable medium 722in which one or more sets of instructions 724, e.g. software, can beembedded. Further, the instructions 724 may perform one or more of themethods or logic as described herein. The instructions 724 may residecompletely, or at least partially, within the memory 704 and/or withinthe processor 702 during execution by the computer system 700. Thememory 704 and the processor 702 also may include computer-readablemedia as discussed above.

The present disclosure contemplates a computer-readable medium 722 thatincludes instructions 724 or receives and executes instructions 724responsive to a propagated signal; so that a device connected to anetwork 235 may communicate voice, video, audio, images or any otherdata over the network 235. The instructions 724 may be implemented withhardware, software and/or firmware, or any combination thereof. Further,the instructions 724 may be transmitted or received over the network 235via a communication interface 718. The communication interface 718 maybe a part of the processor 702 or may be a separate component. Thecommunication interface 718 may be created in software or may be aphysical connection in hardware. The communication interface 718 may beconfigured to connect with a network 235, external media, the display714, or any other components in system 700, or combinations thereof. Theconnection with the network 235 may be a physical connection, such as awired Ethernet connection or may be established wirelessly as discussedbelow. Likewise, the additional connections with other components of thesystem 700 may be physical connections or may be established wirelessly.In the case of a service provider server 240, a third party server 250,an advertising services server 260, the servers may communicate withusers 120A-N and the revenue generators 110A-N through the communicationinterface 718.

The network 235 may include wired networks, wireless networks, orcombinations thereof. The wireless network may be a cellular telephonenetwork, an 802.11, 802.16, 802.20, or WiMax network. Further, thenetwork 235 may be a public network, such as the Internet, a privatenetwork, such as an intranet, or combinations thereof, and may utilize avariety of networking protocols now available or later developedincluding, but not limited to TCP/IP based networking protocols.

The computer-readable medium 722 may be a single medium, or thecomputer-readable medium 722 may be a single medium or multiple media,such as a centralized or distributed database, and/or associated cachesand servers that store one or more sets of instructions. The term“computer-readable medium” may also include any medium that may becapable of storing, encoding or carrying a set of instructions forexecution by a processor or that may cause a computer system to performany one or more of the methods or operations disclosed herein.

The computer-readable medium 722 may include a solid-state memory suchas a memory card or other package that houses one or more non-volatileread-only memories. The computer-readable medium 722 also may be arandom access memory or other volatile re-writable memory. Additionally,the computer-readable medium 722 may include a magneto-optical oroptical medium, such as a disk or tapes or other storage device tocapture carrier wave signals such as a signal communicated over atransmission medium. A digital file attachment to an e-mail or otherself-contained information archive or set of archives may be considereda distribution medium that may be a tangible storage medium.Accordingly, the disclosure may be considered to include any one or moreof a computer-readable medium or a distribution medium and otherequivalents and successor media, in which data or instructions may bestored.

Alternatively or in addition, dedicated hardware implementations, suchas application specific integrated circuits, programmable logic arraysand other hardware devices, may be constructed to implement one or moreof the methods described herein. Applications that may include theapparatus and systems of various embodiments may broadly include avariety of electronic and computer systems. One or more embodimentsdescribed herein may implement functions using two or more specificinterconnected hardware modules or devices with related control and datasignals that may be communicated between and through the modules, or asportions of an application-specific integrated circuit. Accordingly, thepresent system may encompass software, firmware, and hardwareimplementations.

FIG. 8 is a screenshot of an implementation of a revenue generatoraccount summary view of a revenue generator interface in the systems ofFIG. 1, and FIG. 2 or any other system serving advertisements overmobile devices. A revenue generator interface may be displayed to one ofthe revenue generators 110A-N, such as the revenue generator A 110A,when the revenue generator A 110A interacts with the service provider130. The screenshot 800 may include an alerts table 810, an accountsummary table 820, an account performance table 830, an accountdrop-down box 840, and a revenue generator identifier 850.

The revenue generator currently interacting with the service provider130 may be identified by the revenue generator identifier 850. In thescreenshot 800, the revenue generator may be identified as “ysmmobile”.The revenue generator A 110A may be able to change the account beingviewed by selecting a different account from the account drop-down box840. In the screenshot 840 the account currently being viewed may be“Mobile Test A/C (2010165833)”. The alerts table 810, account summarytable 820 and account performance table 830, may display data relatingto the selected account, such as the “Mobile Test A/C (2010165833)”account.

The alerts table 810 may display current alerts for the selectedaccount, such as payment reminders or a reminder that the budget of therevenue generator A 110A may be low. The account summary table 820 maydisplay information relating to the selected account, such as thestatus, the account balance, the daily budget, the average daily cost,and the days to depletion. The account performance table 830 may displaythe performance of the selected account for the previous 7 days, or anyother time period. The account performance table 830 may display accountinformation for each of the previous days or other time period and atotal for the entire time period. The account performance table 830 maydisplay summary data from all campaigns, listings and carrier listingsof the account, such as total impressions, total clicks, average clickthrough rate, average cost per click and total cost, and the budget.

FIG. 9 is a screenshot of an implementation of a revenue generatoraccount preferences view of a revenue generator interface in the systemsof FIG. 1, and FIG. 2 or any other system serving advertisements overmobile devices. A revenue generator interface may be displayed to one ofthe revenue generators 110A-N, such as the revenue generator A 110A,when the revenue generator A 110A interacts with the service provider130. The account preferences screen may allow the revenue generator A110A to view or change default settings for the selected account. Thescreenshot 900 may include an account drop-down box 840, a revenuegenerator identifier 850, a default bid textbox 910, a mobile sitecheckbox 920, a default URL textbox 930, a default phone number textbox940, a logo display 950, a logo textbox 960, a browse button 970 and anupdate button 980.

The revenue generator A 120A may enter a default bid amount in thedefault bid textbox 910. The revenue generator A 110A may check themobile site checkbox 920 if the revenue generator A 110A has a mobilesite. If the revenue generator A 110A has a mobile site, the revenuegenerator A 110A may enter the URL of the mobile site in the default URLtextbox 930.

If the revenue generator A 110A does not have a mobile site, the serviceprovider 130 may generate a “WAP ad” for the revenue generator A 110A.The “WAP ad” may include the phone number and logo of the revenuegenerator A 110A and a short message. The revenue generator A 110A maysupply their phone number in the default phone number box 940. Therevenue generator A 110A may specify the location of their logo in thelogo textbox 960. Alternatively or in addition the revenue generator A110A may browse for their logo by clicking on the browse button 970. Apreview of the logo may be displayed in the logo display 950. Therevenue generator A 110A may submit the changes to the service provider130 by clicking on the update button 980.

FIG. 10 is a screenshot of an implementation of a revenue generatorcampaign summary view of a revenue generator interface in the systems ofFIG. 1, and FIG. 2 or any other system serving advertisements overmobile devices. A revenue generator interface may be displayed to one ofthe revenue generators 110A-N, such as the revenue generator A 110A,when the revenue generator A 110A interacts with the service provider130. The campaign summary screen may allow the revenue generator A 110Ato view the current campaigns, change the status of the campaigns andrename, add or delete campaigns. The screenshot 1000 may include acampaign summary table 1010, an account drop-down box 840, and a revenuegenerator identifier 850. The campaign summary table 1010 may include anadd campaign textbox 1020, an add campaign button 1022, an update button1018 and one or more rows of data, each representing a campaign of therevenue generator A 110A. Each row of data may include a campaign namelink 1012, the number of keywords in the campaign, the status of thecampaign, a new status drop-down box 1040, a rename campaign textbox1014, and a delete checkbox 1016.

The campaign name link 1012 may display the name of the campaign to therevenue generator A 110A. If the revenue generator A 110A clicks on thecampaign name link 1012, the revenue generator A 110A may be displayed alisting management screen for the campaign, such as in FIG. 11 and FIG.12. The new status drop-down box 1040 may allow a revenue generator A110A to change the status of the campaign, such as to offline or online.The revenue generator A 110A may be able to rename the campaign bytyping a new name into the rename campaign textbox 1014. The revenuegenerator may be able to delete a campaign by checking the deletetextbox 1016. The revenue generator A 110A may submit changes to thecampaigns by clicking on the update button 1018. The revenue generator A110A may be able to add a campaign by typing a campaign name into theadd campaign textbox 1020 and then clicking on the add campaign button1022.

FIG. 11 is a screenshot 1100 of an implementation of a revenue generatorlisting management view of a revenue generator interface in the systemsof FIG. 1, and FIG. 2 or any other system serving advertisements overmobile devices. A revenue generator interface may be displayed to one ofthe revenue generators 110A-N, such as the revenue generator A 110A,when the revenue generator A 110A interacts with the service provider130. The listing interface screen may allow the revenue generator A 110Ato add/modify/view their listings, and their carrier listings. Thescreenshot 1100 may include a listing summary table 1110, a managecreative table 1140, a manage offer table 1160, an account drop-down box840, and a revenue generator identifier 850.

The listing summary table 1110 may include a campaign drop-down box1112, an add keyword textbox 1114, an add keyword button 1116, an updatelistings button 1130, a previous listings link 1132, a next listingslink 1134 and one or more rows of keyword data. The rows of keyword datamay include a keyword link 1120, a max bid, a status, a new max bidtextbox 1122, a new status drop-down box 1124, a change campaigndrop-down box 1126, and a delete keyword checkbox 1128.

The manage creative table 1140 may include carrier tabs 1170, a mobilesite checkbox 1142, a listing title textbox 1144, a mobile site URLtextbox 1146, a max bid textbox 1148, apply changes radio buttons 1158,a listing preview window 1152, a submit button 1154, and a defaultsbutton 1156. The manage offer table 1160 may include a status drop-downbox 1162, a max bid textbox 1164, an apply changes radio buttons 1166,and an update offer button 1168.

The listing summary table 1110 may display all of the listings of thecampaign identified by the campaign drop-down box 1112. The campaigndrop-down box may allow the revenue generator A 110A to choose one ofthe campaigns associated with the account identified in the accountdrop-down box 840. The account drop-down box 840 may include all of theaccounts associated with the revenue generator A 110A. The summarylisting table 1110 may contain a row of data for each listing of thecampaign. The data may include the keyword associated with the listing,the max bid of the listing, and the status of the listing. The revenuegenerator may be able to enter a new max bid for the keyword in the newmax bid textbox 1122. The status of the keyword maybe modified bychanging the new status drop-down box 1124. The campaign the listing isassociated with may be modified by the change campaign drop-down box1126. The listing may be deleted by clicking on the delete checkbox1128. The revenue generator A 110A may submit the changes by clicking onthe update listings button 1130. The previous listings link 1132 and thenext listings link 1134, may allow the revenue generator A 110A to viewother listings associated with the selected campaign.

The revenue generator A 110A may be able to click on the keyword link1120 to change the data related to the carrier listings of the keyword.When the revenue generator A 110A clicks on a keyword link 1120, themanage creative table 1140 and the manage offer table 1160 may update toreflect the data associated with the keyword link 1120 clicked on. Thecarrier listings data may be modified in the manage creative table 1140and the manage offer table 1160. The manage creative table 1140 mayallow the revenue generator A 110A to modify the advertisementassociated with each carrier listing for the keyword. The revenuegenerator A 110A may be able to view data associated with each of thecarrier listing by clicking through the carrier tabs 1170.

The manage creative table 1140 may display the keyword the revenuegenerator A 110A is currently viewing. The revenue generator A 110A mayidentify whether they have a mobile site for the carrier by clicking onthe mobile site checkbox 1142. If the revenue generator A 110A has amobile site for the carrier identified by the carrier tabs 1170, therevenue generator A 110A may enter the title of the advertisement in thelisting title textbox 1144. The listing title may be the text of theadvertisement that may be displayed to the users 120AA-NN. The revenuegenerator A 110A may enter the URL of their mobile site for the carrierin the mobile site URL textbox 1146. The mobile site URL may be the URLthat the users 120AA-NN may be directed to upon clicking on theadvertisement of the revenue generator A 110A. The revenue generator A110A may identify their max bid for the keyword on the carrier in themax bid textbox 1148. The max bid may identify the maximum amount therevenue generator A 110A may be willing to pay to have theiradvertisement displayed to users 120AA-NN of the carrier. The applychanges radio buttons 1158 may allow the revenue generator A 110A tospecify which carriers the changes may apply to. The revenue generator A110A may submit the changes by clicking on the submit button 1154.

The revenue generator A 110A may click on the defaults button 1156 tofill the data fields in the manage creative table 1140 with any defaultsthey identified in the account preferences screenshot 900. A preview ofthe advertisement may be displayed in the listing preview window 1152.If the revenue generator A 110A makes changes to the manage creativetable 1140, the revenue generator A 110A may need editorial approval.Editorial approval may require a supervisor or account administrator ofthe service provider 130 to approve of the creative changes to thelisting for the given carrier. The editorial approval process may ensurethat the advertisement does not contain hate terms, infringe on othertrademarks, or otherwise be inappropriate for displaying to the users120AA-NN. Alternatively or in addition the editorial approval may beautomated and may be performed by the service provider 130.

The manage offer table 1160 may allow the revenue generator A 110A tomodify a subset of the data associated with the carrier listing thatdoes not require editorial approval. The revenue generator A 110A maychange the status of the carrier listing by clicking on the statusdrop-down box 1162. The revenue generator A 110A may modify the bidamount in the max bid textbox 1164. The revenue generator A 110A mayselect which carriers the changes may apply to by using the applychanges radio buttons 1166. The revenue generator A 110A may update themanage offer table 1160 information by clicking on the update offerbutton 1168.

Alternatively or in addition the service provider 130 and/or the revenuegenerators 110A-N may use middleware to implement a presentationabstraction layer, such as the YAHOO! MOBILE SUSHI platform, to simplifythe process of creating campaigns across multiple MNOs 115A-N.

FIG. 12 is a screenshot 1200 of an implementation of a revenue generatorlisting management view of a revenue generator interface in the systemsof FIG. 1, and FIG. 2 or any other system serving advertisements overmobile devices. The screenshot 1200 demonstrates the implementation of a“WAP ad” for revenue generators 110A-N who may not have mobile sites fora particular carrier. This functionality may be demonstrated in themanage creative table 1140. The remainder of the screenshot 1200 may besimilar or the same as the screenshot 1100 in FIG. 11. A revenuegenerator interface may be displayed to one of the revenue generators110A-N, such as the revenue generator A 110A, when the revenue generatorA 110A interacts with the service provider 130.

In the screenshot 1200, the revenue generator A 110A may not have amobile site for the mobile carrier “3”. The revenue generator A 110A mayuncheck the mobile site checkbox 1142 to identify that they do not havea mobile site for the mobile carrier. Unchecking the mobile sitecheckbox 1142 may cause the mobile site URL textbox 1146 in FIG. 11 todynamically change into a call offer textbox 1246. In addition, a calloffer preview window 1280 may be added to the manage creative table1140. The revenue generator A 110A may enter the text of the “WAP ad” inthe call offer textbox 1246. This text may be displayed to the users120AA-NN when they click on the associated advertisement. The call offerpreview window 1280 may display a preview of the call offer, or “WAPad”. The call offer may also include the logo identified in the calloffer logo textbox 960 in FIG. 9.

FIG. 13 is a screenshot 1300 of an implementation of a revenue generatoreditorial status view of a revenue generator interface in the systems ofFIG. 1, and FIG. 2 or any other system serving advertisements overmobile devices. A revenue generator interface may be displayed to one ofthe revenue generators 110A-N, such as the revenue generator A 110A,when the revenue generator A 110A interacts with the service provider130. The editorial status screen may allow the revenue generator A 110Ato view the editorial status of their listings. The screenshot 1300 mayinclude an editorial status table 1310, a campaign drop-down box 1320, atype drop-down box 1330, a go button 1340, an account drop-down box 840,and a revenue generator identifier 850.

The editorial status table 1310 may display the editorial status of thelistings associated with the campaign identified in the campaign statusdrop-down box 1320. The listing data may be further filtered byselecting a status type of the listing in the type drop-down box 1330,such as “All,” “Declined,” “Pending,” or “Approved.” The status type mayrefer to the status field in the editorial status table 1310. Therevenue generator A 110A may submit changes to the campaign drop-downbox 1320 or the type drop-down box 1330, by clicking on the go button1340. Clicking on the go button 1340 may refresh the editorial statustable 1310 with data filtered by the selected campaign and type. Theeditorial status table 1310 may include a row for each search termassociated with the campaign. Each row may include information relatingto the listing, such as the carrier, the date submitted, the editorialstatus, the status date, the estimated completion date, and the reasonsfor declining or removing the listing.

FIG. 14 is a screenshot 1400 of an implementation of a revenue generatorbudgeting view of a revenue generator interface in the systems of FIG.1, and FIG. 2 or any other system serving advertisements over mobiledevices. A revenue generator interface may be displayed to one of therevenue generators 110A-N, such as the revenue generator A 110A, whenthe revenue generator A 110A interacts with the service provider 130.The budgeting view may allow the revenue generator A 110A to control thebudgeting of their accounts across all carriers. The screenshot 1400 mayinclude a budgeting table 1410, an enable budgeting checkbox 1412, anaccount budget amount 1414, a credit card drop-down box 1416, areplenish amount textbox 1418, a continue button 1420, an accountdrop-down box 840, and a revenue generator identifier 850.

The revenue generator may A 110A may click on the enable budgetingcheckbox 1412 to enable daily budgeting functionality. Daily budgetingmay allow the revenue generator A 110A to budget the amount spent foreach account across all MNOs 115A-N. The revenue generator A 110A mayenter a budget amount for the account in the account budget amounttextbox 1414. The revenue generator A 110A may identify a credit card topay with in the credit card drop-down box 1416. The revenue generator A110A may identify a replenish amount in the replenish amount textbox1418. The replenish amount may indicate the amount that the credit cardof the revenue generator A 110A may be charged each time the accountbalance becomes low. The revenue generator A 110A may submit thesechanges to the service provider server 240 by clicking on the continuebutton 1420.

FIG. 15 is a screenshot 1500 of an implementation of a revenue generatoradd money view of a revenue generator interface in the systems of FIG.1, and FIG. 2 or any other system serving advertisements over mobiledevices. A revenue generator interface may be displayed to one of therevenue generators 110A-N, such as the revenue generator A 110A, whenthe revenue generator A 110A interacts with the service provider 130.The add money view may allow the revenue generator A 110A to add moneyto an account. The screenshot 1500 may include a credit card drop-downbox 1416, a charge amount textbox 1550, a continue button 1560, anaccount drop-down box 840, and a revenue generator identifier 850.

The revenue generator A 110A may enter an amount to add to an account inthe amount textbox 1418. A credit card to charge the amount to may beselected from the credit card drop-down box 1416. The revenue generatorA 110A may continue to the next screen by clicking on the continuebutton 1560. The revenue generator A 110A may use the money added to theaccount to place bids across any MNOs 115A-N associated with theaccount.

FIG. 16 is a screenshot 1600 of an implementation of a revenue generatoradd money confirmation view of a revenue generator interface in thesystems of FIG. 1, and FIG. 2 or any other system serving advertisementsover mobile devices. A revenue generator interface may be displayed toone of the revenue generators 110A-N, such as the revenue generator A110A, when the revenue generator A 110A interacts with the serviceprovider 130. The add money confirmation view may show the revenuegenerator A 110A a summary of their add money request specified in FIG.15. The revenue generator A 110A may reach the add money confirmationscreenshot 1600 by clicking on the continue button 1560 in FIG. 15.

The screenshot 1600 may include a payment summary view 1610, an accountdrop-down box 840, and a revenue generator identifier 850. The paymentsummary view 1610 may include a submit request button 1612. The revenuegenerator may click on the submit request button 1612 to communicatetheir add money request to the service provider server 240. The revenuegenerator A 110A may use the added money to pay for advertising acrossall the MNOs 115A-N. The service provider 130 may utilize andindependent cross-network payment mechanism to seamlessly handlepayments to all of the MNOs 115A-N.

FIG. 17 is a screenshot 1700 of an implementation of a revenue generatoradd payment method screen of a revenue generator interface in thesystems of FIG. 1, and FIG. 2 or any other system serving advertisementsover mobile devices. A revenue generator interface may be displayed toone of the revenue generators 110A-N, such as the revenue generator A110A, when the revenue generator A 110A interacts with the serviceprovider 130. The screenshot 1700 may include an add payment methodtable 1710, an account drop-down box 840, and a revenue generatoridentifier 850. The add payment method screen may allow the revenuegenerator A 110A to add a payment method to the account identified inthe account drop-down box 840.

The add payment method table 1710 may include an add button 1712 andseveral inputs relating to adding a payment method. The revenuegenerator A 110A may fill out the payment method/billing fields in theadd payment method table 1710 with information relating to a new paymentmethod. The revenue generator A 110A may click on the add button 1712 tocommunicate the add payment method request to the service providerserver 240. The revenue generator A 110A may then use the added paymentmethod to replenish the account specified in the account drop-down box840.

FIG. 18 is a screenshot 1800 of an implementation of a revenue generatorupdate payment method screen of a revenue generator interface in thesystems of FIG. 1, and FIG. 2 or any other system serving advertisementsover mobile devices. A revenue generator interface may be displayed toone of the revenue generators 110A-N, such as the revenue generator A110A, when the revenue generator A 110A interacts with the serviceprovider 130. The screenshot 1700 may include an update payment methodtable 1810, an account drop-down box 840, and a revenue generatoridentifier 850. The update payment method screen may allow the revenuegenerator A 110A to update a payment method of the account identified inthe account drop-down box 840.

The update payment method table 1810 may include an update button 1812,payment method drop-down box 1814, and several inputs relating to apayment method. The revenue generator A 110A may select a payment methodto update by using the payment method drop-down box 1814. The paymentmethod drop-down box 1814 may reflect the payment methods associatedwith the account identified in the account drop-down box 840. Therevenue generator A 110A may modify the payment method/billing fields inthe update payment method table 1810 with information relating to thepayment method. The revenue generator A 110A may click on the updatebutton 1812 to communicate the update payment method request to theservice provider server 240. The revenue generator A 110A may then usethe payment method to replenish the account specified in the accountdrop-down box 840.

FIG. 19 is a screenshot 1900 of an implementation of a revenue generatorreports view of a revenue generator interface in the systems of FIG. 1,and FIG. 2 or any other system serving advertisements over mobiledevices. A revenue generator interface may be displayed to one of therevenue generators 110A-N, such as the revenue generator A 110A, whenthe revenue generator A 110A interacts with the service provider 130.The screenshot 1900 may include a recent reports table 1910, a generatereport table 1940, an account drop-down box 840, and a revenue generatoridentifier 850.

The recent reports table 1910 may include a report name link 1912 and adelete report box 1914. The recent reports table 1910 may displayseveral rows of data relating to recently generated reports. The datamay include the date the report was generated on, the date range thereport relates to and the type of report. The revenue generator A 110Amay be able to click on the report name link 1912 to view the report.The revenue generator A 110A may be able to click on the delete reportbox 1914 to delete the report.

The generate report table 1940 may include a report type drop-down box1942, begin date drop-down boxes 1944, end date drop-down boxes 1946 anda get report button 1948. The report type drop-down box 1942 may allowthe revenue generator A 110A to select a type of report to generate,such as an account activity detail report, an account daily summaryreport, and a campaign summary report. The begin date drop-down boxes1944 may allow the revenue generator A 110A to select the date thebeginning date of the report. The end date drop-down boxes 1946 mayallow the revenue generator A 110A to specify an end date for thereport. The revenue generator A 110A may click on the get report button1948 to communicate the generate new report request to the serviceprovider 240.

The reports screenshot 1900 may allow the revenue generator A 110A tomonitor their listings across all the MNOs 115A-N. The revenue generatorA 110A may be able to generate a report that displays the effectivenessof their listings across all MNOs 115A-N. The revenue generator A 110Amay also be able to monitor and compare the effectiveness of theirlistings on each of the MNOs 115A-N.

The methods described herein may be implemented by software programsexecutable by a computer system. Further, implementations may includedistributed processing, component/object distributed processing, andparallel processing. Alternatively or in addition, virtual computersystem processing maybe constructed to implement one or more of themethods or functionality as described herein.

Although components and functions are described that may be implementedin particular embodiments with reference to particular standards andprotocols, the components and functions are not limited to suchstandards and protocols. For example, standards for Internet and otherpacket switched network transmission (e.g., TCP/IP, UDP/IP, HTML, HTTP)represent examples of the state of the art. Such standards areperiodically superseded by faster or more efficient equivalents havingessentially the same functions. Accordingly, replacement standards andprotocols having the same or similar functions as those disclosed hereinare considered equivalents thereof.

The illustrations described herein are intended to provide a generalunderstanding of the structure of various embodiments. The illustrationsare not intended to serve as a complete description of all of theelements and features of apparatus, processors, and systems that utilizethe structures or methods described herein. Many other embodiments maybe apparent to those of skill in the art upon reviewing the disclosure.Other embodiments may be utilized and derived from the disclosure, suchthat structural and logical substitutions and changes may be madewithout departing from the scope of the disclosure. Additionally, theillustrations are merely representational and may not be drawn to scale.Certain proportions within the illustrations may be exaggerated, whileother proportions may be minimized. Accordingly, the disclosure and thefigures are to be regarded as illustrative rather than restrictive.

Although specific embodiments have been illustrated and describedherein, it should be appreciated that any subsequent arrangementdesigned to achieve the same or similar purpose may be substituted forthe specific embodiments shown. This disclosure is intended to cover anyand all subsequent adaptations or variations of various embodiments.Combinations of the above embodiments, and other embodiments notspecifically described herein, may be apparent to those of skill in theart upon reviewing the description.

The Abstract is provided with the understanding that it will not be usedto interpret or limit the scope or meaning of the claims. In addition,in the foregoing Detailed Description, various features may be groupedtogether or described in a single embodiment for the purpose ofstreamlining the disclosure. This disclosure is not to be interpreted asreflecting an intention that the claimed embodiments require morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive subject matter may be directed toless than all of the features of any of the disclosed embodiments. Thus,the following claims are incorporated into the Detailed Description,with each claim standing on its own as defining separately claimedsubject matter.

The above disclosed subject matter is to be considered illustrative, andnot restrictive, and the appended claims are intended to cover all suchmodifications, enhancements, and other embodiments, which fall withinthe true spirit and scope of the description. Thus, to the maximumextent allowed by law, the scope is to be determined by the broadestpermissible interpretation of the following claims and theirequivalents, and shall not be restricted or limited by the foregoingdetailed description.

1. A method for serving advertisements over mobile devices, comprising:identifying a request from a mobile device; determining a mobile carrierthe mobile device is on; identifying an advertisement targeted to therequest and the mobile carrier; and serving the advertisement to themobile device.
 2. The method of claim 1 wherein the request is a requestto search for a keyword.
 3. The method of claim 2 wherein theadvertisement is targeted to the keyword.
 4. The method of claim 1wherein identifying an advertisement targeted to the request and themobile carrier further comprises: identifying a display technologysupported by the mobile carrier; and adapting the advertisement to thedisplay technology of the mobile carrier.
 5. The method of claim 4wherein the advertisement is adapted dynamically.
 6. The method of claim4 wherein the display technology comprises at least one of WML, XHTML,iMode HTML or cHTML.
 7. The method of claim 1 wherein the mobile devicecomprises a mobile phone.
 8. A method for targeting an advertisement toa mobile carrier, comprising: identifying a keyword; identifying amobile carrier; identifying an advertisement; targeting theadvertisement to the mobile carrier and the keyword; serving theadvertisement to a mobile device on the mobile carrier when a user usesthe mobile device to search for the keyword.
 9. The method of claim 8wherein targeting the advertisement to the mobile carrier and thekeyword further comprises: identifying a display technology of themobile carrier; and adapting the advertisement to the display technologyof the mobile carrier.
 10. The method of claim 8 wherein theadvertisement is served to the mobile device when the user clicks on alink comprising the keyword.
 11. The method of claim 8 wherein theadvertisement is served to the mobile device with a set of searchresults corresponding to the keyword.
 12. The method of claim 8 whereinthe mobile device comprises a mobile phone.
 13. The method of claim 8wherein targeting the advertisement to the mobile carrier and thekeyword further comprises associating a bid amount with the keyword andmobile carrier for the advertisement.
 14. The method of claim 13 whereinthe bid amount comprises an amount paid by an owner of the advertisementwhen the advertisement is displayed on the mobile device.
 15. A systemfor serving advertisements over mobile devices, comprising: a memory tostore a request, a mobile carrier data and an advertisement data; aninterface operatively connected to the memory to communicate with amobile device; and a processor operatively connected to the memory andthe interface, the processing for running instructions, wherein theprocessor receives a request from the mobile device via the interface,determines the mobile carrier data relating to a mobile carrier themobile device is on, identifies the advertisement data targeted to therequest and the mobile carrier data, and communicates the advertisementdata to the mobile device via the interface.
 16. The system of claim 15wherein the request is a request to search for a keyword.
 17. The systemof claim 16 wherein the processor identifies the advertisement datatargeted to the keyword and the mobile carrier data.
 18. The method ofclaim 16 wherein the processor performs the search requested andcommunicates a set of search results and the advertisement data to themobile device via the interface.
 19. The system of claim 15 wherein themobile device comprises a mobile phone.
 20. The system of claim 15wherein the interface communicates to the mobile device via the mobilecarrier.